PowerTalker is a project of mine, motivated in equal parts by a desire to learn Mac programming better and a desire to have my mail read aloud to me. Basically its job in life is to use the Speech Manager to read messages delivered via PowerTalk.
Features:
* Fat Binary.
* Can read selected portions of a PowerTalk letter, including sender, subject, time sent, and text content.
* Letters can be read as they come in, on command, or by drag and dropping particular letters.
* It's AppleScriptable.
* Provides 100% of the USRDA of vitamin C.
* Works cheerfully in the background.
* Only takes 150K of memory. (Possibly more if you use a high quality voice.)
* Full balloon help.
Shortcomings:
* Messages that PowerTalker fools with are marked as read. This stinks, but there's no way around it with the current APIs. When Apple released the super-duper-improved APIs for AOCE, I'll fix this.
Configurations:
You can set up PowerTalker to do a number of different things.
Announce new mail: Set "Read New Mail, then Quit" to off, "Auto Read New Mail" to on, and any combination of content that you like. I prefer Sender and Subject, but hey -- it's on your machine, do what you want.
Read new mail on command: If you've got one o' them speech-recognizing Macs, set "Read New Mail, then Quit" to on and put an alias in your Speakable Items folder. Or put an alias in your Apple menu.
Read only the mail I tell you to read: Turn off "Read New Mail, then Quit" and "Auto Read New Mail". If you want a letter read, drag it on top of the PowerTalker application and drop it.
Read mail when you deactivate your screen saver: Gee, that's a good one. If your screen saver is scriptable, you could probably write a script to see when it was deactivated and then fire off a "Read All Letters" command to PowerTalker. I haven't done this, so no warrantees.
Release History
v0.1.0
8-3-94
First public release. This version is available only in PowerMac code, as I'm still getting odd errors running 68K code. It's been tested with System 7 Pro, as 7.5's PowerTalk APIs were still a little buggy last time I checked (beta 2, if you're interested). It doesn't do too much yet. The user interface is mostly realized, but the choices in preferences make no difference. The only really cool thing it will do is actually read your mail to you using the "read next letter" command. You can interrupt the speech at any time by pressing a key or the mouse button.
v0.2.0
8-4-94
Still only a PowerMac version. Added a "Read All New Mail" command, and several of the preference items now work. It will read only the selected portions of the message (except time) and will filter out RFC822 headers and Internet quoted text.
v0.3.0
8-4-94 (Later that afternoon)
* Cancelling a "Read All New Messages" command now works correctly.
* Auto-reading new messages now works. You can set the interval in the prefs box.
* Now marks messages as read correctly, unless you abort a read. Still need to fix that one.
* Now a fat binary. Whoopee!
v0.4.0
8-10-94
* Messages will now be released when reading is cancelled. (Ooops.)
* Menus reflect available functionality better. (Edit Menu items dimmed when not in use.)
* The problem with words and sentences getting broken up in the middle is now fixed.
* Version resource fixed up. Should now display properly.
* Added basic Apple event support. Program now quits when asked to. It should also respond to "tlkR/RNXT" events to read the next message, and "tlkR/RALL" to read all messages. I think it will read drag and dropped mail if I can ever convince the Finder that letters should be able to be dropped on it.
* Added balloon help for menus. Added balloon help for preferences dialog.
v0.5.0d0
8-15-94
* Added ellipses ("...") to preferences menu item in accordance with HI guidelines.
* Switched from using SMPGetLetterInfo to SMPGetComponentInfo for sender, subject, & time info because it works both on letters in the In Tray and letters on disk. (Thanks, Gordon!)
* Now reads drag-n-dropped letters from the In Tray and from disk. (Thanks, Gavin!)
* Filters out '*' characters.
* Reduced memory partition to 150K. (You'll need more if you're using the high quality voices.)
* You can now swap to another application by clicking on one of its window during a read. If you switch back to PT and press a key or click in the menu bar, you can cancel a read in progress.
* Should be much less rude about seizing complete control of your machine when skipping a large .sig block or a large segment of quoted text.
* Removed "Clear" item from "Edit" menu.
* Finally got a basic AppleScript dictionary added to the thing.
v0.5.0d1
* Recompiled using Codewarrior CW4.
v0.6.0d0
8-23-94
* Added balloon help to Finder ICON.
* Should quit gracefully on machines without PowerTalk now.
* Shouldn't seize control of machine when skipping a large segment of ignored text in the foreground.
* Now defaults to an Announce Mail mode: autoreading sender and title of new messages every 30 seconds.
* Prefs are now saved. You can set PowerTalker up the way you like and not have to worry about remembering to reset those options every time you launch it.
v0.7.0d0
8-26-94
* Added support for "Read and then Quit" option. Hold down the command key while launching to temporarily disable this feature and thus allow access to the prefs dialog again. Also added alert to inform user of how it works.
* Added support for reading the time a message was sent.
* Fixed the bug where content was not read.
* Fixed default item in alerts.
v1.0
8-31-94
* First Wide Release.
* PowerTalker would sometimes beep when a read was aborted. This no longer occurs.
* Should provide a more helpful error message on PPCs where AOCE is not available.
* Will now read all of the text content of a letter, rather than just the first block. (Thanks, Greg.)
* Ability to announce enclosures. "The letter has x enclosures. They are named: <blah, blah, blah>"
* Apple Guide help. (This is cake as soon as I get a copy of 7.5.)
* More complete AppleScript support, including recordability and the ability to set preferences via AppleScript.
* Perhaps the incorporation of some rudimentary rules processing.
If you use the program, all I ask of you is that you send me some e-mail to let me know you find it helpful. I'll then add you to my list of users and will let you know when upgrades and bug fixes are released. Enjoy!
Sean McMains
mcmains@unt.edu
Legal Frippery
This program could well cause your computer to melt into a puddle of ooze. The radiation it produces may cause your dog to mutate into some kind of deadly carniverous wolfhound that goes on gruesome killing sprees every full moon. You may go blind from using this software. I make no promises that the software will do anything that I say it will. If you run it, the risk is yours.